Method for controlling the access to a storage device and a corresponding computer program

ABSTRACT

A method and computer program are provided for controlling access to a memory device wherein, even with a complex data storage structure, access is made to memory areas within the memory device with a minimal number of selection inputs required for selection of a desired memory area.

[0001] The continuously increasing extent of the functionality of applications which are provided in data processing systems has resulted in the amount of data which needs to be controlled by the data processing systems increasing to a similar extent. The desire to use the extended functionality of applications for example for supporting complete business processes is a further motivation for increasing networking of data processing systems and for increased integration of different applications provided there, in order to form workflow management systems. The increasing networking of data processing systems and the increased integration of applications have increasingly led to the need to take account of the problems associated with multiple access to memory devices in the data processing systems. Increasing amounts of data and multiple access not only result in new requirements for data maintenance and distribution, but also require new strategies for access to memory resources by data processing systems.

[0002] The present invention is based on the object of specifying a method for fast and efficient control of access to a memory device, and a computer program for implementing the method.

[0003] According to the invention, this object is achieved by a method having the features specified in claim 1, and by a computer program having the features specified in claim 10. Advantageous developments of the method according to the invention can be found in the dependent claims 2 to 9.

[0004] One major aspect of the invention is that, even with a complex data storage structure, access is made to memory areas within the memory device with a minimal number of selection inputs required for selection of a desired memory area. This is achieved by providing first address values from a control file and second address values from a memory element in a memory unit which is associated with an address allocation device, in the sense of information precompression. The first and the second address values are each associated with text and graphics contents in the control file and/or in a memory element, which are visualized on a user interface in order to assist the selection of the address values. Specific preparation for access to desired data in a selected memory area of the memory device takes place in the address allocation device by evaluating the second address values, which identify addressing information for the memory device or for a memory element.

[0005] A further aspect of the invention is the provision of an essentially complete overview of a complex data storage structure with a fine breakdown.

[0006] The invention will be explained in more detail in the following text using an exemplary embodiment and with reference to the drawing, in which:

[0007]FIG. 1 shows a flowchart of the method according to the invention,

[0008]FIG. 2 shows a schematic illustration of an arrangement for carrying out the method according to the invention,

[0009]FIG. 3 shows an example of access to different memory devices during a main process, and

[0010]FIG. 4 shows a schematic illustration of a main process navigation system as an exemplary embodiment of the method according to the invention.

[0011] The flowchart shown in FIG. 1 is used to illustrate the method of operation of the method according to the invention for controlling access to a memory device DB. The method according to the invention is preferably implemented by a computer program. The arrangement illustrated schematically in FIG. 2 relates to an example of devices which are involved in carrying out the method according to the invention, and of the signal flow between these devices. Depending on the requirement, electronic, magnetic or optical storage media may be used, for example, for the storage device DB.

[0012] In step 1 as shown in FIG. 1, text and graphics contents TGI1 from a control file CF are visualized on the user interface UI (see also FIG. 2). The user interface UI may, for example, be in the form of a personal computer or a workstation, and has a display device DIS and at least one input appliance KB—for example a keyboard or a mouse. According to step 2 in the flowchart illustrated in FIG. 1, once a first selection input SI1, which is entered via the input appliance KB of the user interface UI, has been received from a user, a first address value AD1, which is associated with the first selection input SI1, is read from the control file (see also FIG. 2).

[0013] The first selection input SI1, may, for example, be linked to address information, or may contain this information. A memory area in the control file can be addressed on the basis of the address information, in order to read the first address value AD1 as the contents of this memory area. The text and graphics contents TGI1 from the control file CF as well as the first selection input SI1 can be transmitted between the user interface UI and the control file CF for example via a data bus, which is not illustrated in any more detail in FIG. 2, between the user interface UI and a read/write apparatus for the control file CF.

[0014] The first address value AD1 is transmitted to an address allocation device AAD in a corresponding manner to step 3 in the flowchart. Furthermore, the first address value AD1 is used to address a memory element in a memory unit SD which is associated with the address allocation device AAD. Text and graphics contents TGI2 from the addressed memory element are then visualized (step 4).

[0015] The visualization should likewise advantageously be produced on the user interface UI. The text and graphics contents TGI2 from the addressed memory element are associated with second address values, which identify addressing information for the memory device DB or for a memory element of the memory unit SD. A converter CONV for the address allocation device AAD may be used, by way of example, to distinguish whether this addressing information relates to the memory device DB or to a memory element in the memory unit SD, and addresses either the memory device DB or the memory unit SD as a function of the addressing information.

[0016] According to step 5, once a second selection input SI2 has been received, a second address value AD2 is selected, which is associated with the second selection input SI2. The second address value AD2 is selected on the basis of the visualized text and graphics contents TGI2 of the addressed memory element. The second address value AD2 may, for example, be associated with the second selection input SI2 in a simple manner by the second selection input SI2 being transmitted as address information from the user interface UI via a data bus which is not illustrated in any more detail in FIG. 2, to the memory unit SD. The address information which is transmitted to the memory unit SD can be used to address a memory element for reading the second address value AD2. The second address value AD2 in this case represents the contents of this memory element. The text and graphics contents TGI2 which need to be visualized in order to select the second address value AD2 may also be transmitted via the data bus between the user interface UI and the memory unit SD. Once the second address value AD2 has been read, it is advantageously transmitted to the address allocation device AAD, for further evaluation.

[0017] Since the second address value AD2 can identify addressing information AI2 a for the memory device DB or addressing information AI2 b for a memory element in the memory unit SD, a check is then carried out to determine whether this address information relates to the memory device DB or to a memory element in the memory unit SD (step 6).

[0018] This check may, for example, be carried out once again by the converter CONV for the address allocation device AAD, which addresses either the memory device DB or the memory unit SD as a function of the addressing information. If the addressing information relates to a memory element in the memory unit SD, then a jump is made back into step 3 within the flowchart that is illustrated in FIG. 1. This means that a memory element in the memory unit SD is addressed on the basis of the addressing information AI2 b, which is identified by the second address value AD2 for reading and evaluating further second address values. The text and graphics contents TGI2 of the respectively addressed memory elements are advantageously visualized once again on the user interface UI for reading and evaluating further second address values.

[0019] If the addressing information identified by the selected second address value AD2 relates to the memory device

[0020] DB, then, according to step 7 in the flowchart illustrated in FIG. 1, a memory area in the memory device DB is read on the basis of this addressing information AI2 a. Text and graphics contents TGI3 which are stored in this memory area are preferably likewise transmitted to the user interface UI, where they are visualized. As an alternative to this, it is also possible to transmit the memory area contents in the sense of file transfer, provided the user interface UI has its own memory device.

[0021] Once the second selection input SI2 has been received, the second address value AD2 is preferably selected by means of a sequence controller RTC or by means of the address allocation device AAD. The first address value AD1 is advantageously read by the sequence controller RTC once the first selection input SI1 of the user interface UI has been received. This also applies to the reading of the memory area which is identified by the second address value AD2 in the memory device DB. According to one preferred refinement of the invention, the address allocation device AAD and the sequence controller RTC are in the form of program modules APM1 and APM2, respectively, which run on an application device APD (see FIG. 2).

[0022] According to a further preferred refinement of the method according to the invention, once the data has been read from the memory area which is identified by the second address value AD2 in the memory device DB, an application is started which is associated with the read data by an operating system OS in the application device APD. A procedure such as this is possible not only in the situation where the functionality of the user interface UI is restricted to a display device DIS and an input appliance KB, but also in the situation where the user interface UI is in the form of a personal computer or a workstation in the sense of a client/server architecture. In both situations, it has been found to be advantageous to store the contents

[0023] of the memory unit SD in a non-volatile form in the control file CF and to at least partially read the control file CF when starting access control to the memory device DB, and to write them to a main memory MEM for the application device APD. This implies that the control file CF and the memory unit SD are combined to form a common access control file.

[0024] Furthermore, the access control file and/or the control file CF and the memory unit SD as well as the memory device DB may not only be accommodated on a common data medium but also distributed over a number of data media. Furthermore, the memory element in the memory unit SD which is associated with the address allocation device AAD should, for signal-processing reasons, be addressed by the address allocation device AAD on the basis of the first address value AD1 read from the control file CF.

[0025]FIG. 3 shows an example of access to different memory devices DB1, DB2, DB3 by a number of users u1, u2, u3 during a main process PRC. The main process PRC is in turn subdivided into a number of process elements A, B, C, D. The memory devices DB1, DB2, DB3 contain, for example, documents with information which is read, evaluated and possibly edited in the course of the main process PRC by the users u1, u2, u3 who are involved with this process. In the present example, one user u1, u2, u3 is in each case responsible for processing one process element A, B, C, D. In this case, it is actually not unusual for a user u1, as in the present example, to be responsible for processing two process elements A, D. A high level of matching and reprocessing effort is often necessary during the handling of main processes such as the main process PRC as a result of the overlaps, as can be seen in FIG. 3, between access by the users u1, u2, u3 to the memory devices DB1, DB2, DB3.

[0026] A main process navigation system, which is illustrated schematically in FIG. 4 as an application example of the method according to the invention, simplifies access to jointly used memory devices by a large number of users who are involved in one main process. In the example illustrated in FIG. 4, there are two control files CF1, CF2. The text and graphics contents may selectively be visualized either for one control file individually or for both control files jointly on one user interface UI as is illustrated in FIG. 2.

[0027] A first control file CF1 contains information relating to the running of a main process which is subdivided into a number of process elements A, B, C, D, in the same way as the main process PRC shown in FIG. 3. The information relating to the running of a main process may also be supplemented by details relating to tasks and responsibilities within individual process elements. A second control file contains information relating to individual task packets within a main process or within process elements, in the sense of activity lists. The two control files CF1, CF2 thus contain information relating to the provision of an overview of data which needs to be controlled by the main process navigation system. The use of two control files in this case allows an overview from two different perspectives. The number of control files may be increased further, depending on the requirement and structure of a database.

[0028] Once a first selection input has been received, a first address value AD1 is read from one of the two control files CF1, CF2 in an analogous manner to the above description relating to FIGS. 1 and 2. This address value AD1 is once again transmitted to an address allocation device, which is not shown in any more detail in FIG. 4. The transmitted address value is used for addressing a memory element in a memory unit which is associated with the address allocation device. According to the exemplary embodiment illustrated in FIG. 4, the memory elements are formed by matrices M1 to Mv. The matrices also contain text and graphics contents with reference to information which is relevant for a main process in the sense of convenient user control.

[0029] Once a second selection input has been received, which is based on the visualized text and graphics contents of the matrix M1, an associated second address value AD2 is selected for addressing the further matrices M2 to Mv or the memory devices Dba or DBb. The selection input that is made is illustrated graphically in FIG. 4 by means of a shaded area within the matrix M1.

[0030] The use of the method according to the invention is not restricted to the described exemplary embodiments. 

1. A method for controlling access to a memory device, in which text and/or graphics contents (TGI1) from a control file (CF) are visualized on a user interface (UI), once a first selection input (SI1) from a user has been received, a first address value (AD1), which is associated with the first selection input, is read from the control file (CF), the first address value (AD1) is transmitted to an address allocation device (AAD) and, on the basis of the first address value, a memory element is addressed in a memory unit (SD) which is associated with the address allocation device, text and/or graphics contents (TGI2) from the memory element, to which second address values (AD2) are allocated, are visualized, by means of which addressing information for the memory device (DB) or for a memory element is identified, once a second selection input (SI2) which is made on the basis of the visualized text and/or graphic contents (TGI2) of the memory element has been received, a second address value (AD2) which is associated with this selection input (SI2) is selected, a memory area which is identified by the second address value (AD2) in the memory device (DB) is read, or a memory element is addressed on the basis of the addressing information, which is identified by the second address value, for reading and evaluating further second address values.
 2. The method as claimed in claim 1, characterized in that, once the second selection input (SI2) has been received, the second address value (AD2) is selected by means of a sequence controller (RTC) or by means of the address allocation device (AAD).
 3. The method as claimed in claim 2, characterized in that, once the first selection input (SI1) has been received, the first address value (AD1) is read by the sequence controller (RTC) from the control file (CF).
 4. The method as claimed in claim 2 or 3, characterized in that the memory area which is identified by the second address value (AD2) in the memory device (DB) is read by the sequence controller (RTC).
 5. The method as claimed in one of claims 2 to 4, characterized in that the sequence controller (RTC) and/or the address allocation device (AAD) are in the form of program modules (APM1, APM2) which run on at least one application device (APD).
 6. The method as claimed in one of claims 1 to 5, characterized in that, once data has been read from the memory area which is identified by the second address value (AD2) in the memory device (DB), an application is started which is associated with the read data by an operating system (OS) in the application device (APD).
 7. The method as claimed in claim 5 or 6, characterized in that the contents of the memory unit (SD) are stored in non-volatile form in the control file (CF) and are read at least in part from the control file, and are written to a main memory (MEM) of the application device (APD) when access control starts.
 8. The method as claimed in one of claims 1 to 7, characterized in that the memory element is addressed by the address allocation device (AAD) on the basis of the first address value (AD1).
 9. The method as claimed in one of claims 1 to 8, characterized in that the memory elements are formed by a memory matrix (M1, M2−Mv).
 10. A computer program which can be loaded into a main memory of a computer and has at least one software code section, during whose running text and/or graphics contents (TGI1) from a control file (CF) are visualized on a user interface (UI), once a first selection input (SI1) from a user has been received, a first address value (AD1), which is associated with the first selection input, is read from the control file (CF), the first address value (AD1) is transmitted to an address allocation device (AAD) and, on the basis of the first address value, a memory element is addressed in a memory unit (SD) which is associated with the address allocation device, text and/or graphics contents (TGI2) from the memory element, to which second address values (AD2) are allocated, are visualized, by means of which addressing information for the memory device (DB) or for a memory element is identified, once a second selection input (SI2) which is made on the basis of the visualized text and/or graphic contents (TGI2) from the memory element has been received, a second address value (AD2) which is associated with this selection input (SI2) is selected, a memory area which is identified by the second address value (AD2) in the memory device (DB) is read, or a memory element is addressed on the basis of the addressing information, which is identified by the second address value, for reading and evaluating further second address values, when the computer program is running on the computer. 